/**
 * Created by lenovo on 17-6-21.
 */
/**
 * Created by lenovo on 17-6-7.
 */
var mongodb = require('./db');
var ObjectID = require('mongodb').ObjectID;

function comment(val){
    this.user = val.user;
    this.note_id = val.note_id;
    this.content = val.content;
    this.created_at = val.created_at;
}
module.exports = comment;

comment.prototype.save = function(callback){
    var comment_info = {
        user: this.user,
        note_id: this.note_id,
        content: this.content,
        created_at: this.created_at,
    };
    mongodb.close();
    mongodb.open(function(err,db){
        if(err){
            console.log(err);
            return callback(err);
        }
        db.collection('comment',function(err,collection){
            if(err){
                db.close();
                return callback(err);
            }
            collection.insert(comment_info,{
                safe:true//插入的有序(true)和无序(false)
            }, function(err,comment){
                db.close();
                if(err){
                    return callback(err);
                }
                callback(null,comment);
            });
        });
    });
};

comment.get = function(data,callback){
    mongodb.close();
    mongodb.open(function (err, db) {
        if (err) {
            return callback(err);//错误，返回 err 信息
        }
        //读取 users 集合
        db.collection('comment', function (err, collection) {
            if (err) {
                db.close();
                return callback(err);//错误，返回 err 信息
            }
            collection.find(data).sort({created_at: 1}).toArray(function (err, docs) {
                db.close();
                if (err) {
                    return callback(err);//失败！返回 err
                }
                callback(null, docs);//成功！以数组形式返回查询的结果
            });
        });
    });
};

comment.delete = function(data,callback){
    mongodb.close();
    mongodb.open(function (err, db) {
        if (err) {
            return callback(err);//错误，返回 err 信息
        }
        //读取 users 集合
        db.collection('comment', function (err, collection) {
            if (err) {
                db.close();
                return callback(err);//错误，返回 err 信息
            }
            collection.remove(data,function(err,user){
                db.close();
                if (err) {
                    return callback(err);
                }
                callback(null, user)
            });

        });
    });
};

